home *** CD-ROM | disk | FTP | other *** search
-
- SpeechToy? 9 years later????? Yep.
-
- I thought it would be a kick for it to re-emerge as JForth source
- and executable. (Ok, maybe I need to get out more.)
-
- I've included the original C source code, in case you might
- like to compare them. JForth is really very easy to port to
- from C. I've also included some MARKS files (work with Textra 1.15
- & later) for both source files. (the ones beginning with '}')
-
- And thanks, Dave M Lucas. I suppose that if you weren't before,
- you are now, an official pioneer!
-
- Anyway, hope everyone gets some enjoyment out of this, at least
- as much as I did converting it to JForth.!
-
- Incidentally, the CLONEd JForth program is 5K smaller than
- the Lattice C program, but in all fairness, the Lattice
- compiler is ancient (3.03). I'm sure almost any other C compiler
- would generate smaller programs for reasons I won't go into.
-
- For JForth guys lookin' for something to play with, this
- should be fun.
-
- NOTE: I did fix a few things in the accompanying C source. See
- my change history notes if you're interested. In the JForth
- version, I added the 2.0 colors, shaded gadgets and the LOOP
- Button. Other than that, it's a true & faithful port.
-
- Enjoy.
-
- Mike Haas
- 3867 La Colina Rd.
- El Sobrante, CA 94803
-
- mikeh@starnine.com
-
-
- ------------- For JForth Users --------------
-
- To compile under JForth 3.0 or later...
-
- 1. boot your working jforth program
-
- a. if CLONE is compiled, you will need only about 25K of
- free dictionary space.
-
- b. if CLONE is not compiled, you will need about 70K of
- free dictionary space.
-
- If necessary, increase your JForth size. Refer to your manual
- for details.
-
- 2. 'cd' to the SpeechToy directory.
-
- 3. INCLUDE Makefile.f
-
- The above file will make sure CLONE is compiled, compile Speechtoy.f,
- clone the program, then save the executable in the SpeechToy
- directory.
-
- If you want to just compile the program and run it from JForth,
- INCLUDE Speechtoy.f and enter MAIN.
-
-
-
- ---- Found a Bug in 2.0+ Commodore include files!
-
- I was very surprised to find that under 1.1, 1.2 and 1.3, the
- mouth values from the narrator device were always 0...
- (at least on my trusy old A1000).
-
- Thus, when the face was presented under those OS versions,
- the mouth stayed a dot! :-( The mouth worked fine under 2.1
- on my 3000 and under 2.04 on my 1000!??!
-
- I finally tracked this down to a MAJOR incompatibility between the
- 1.3-and-earlier and the 2.0-and-later include file
- devices/narrator.h. Basically, because Commodore changed the size
- of the "narrator_rb" structure, the "mouth_rb" structure is not
- binary-compatible between the old and the new OS versions. This
- means that programs compiled with 1.3 includes can only get mouth
- values under 1.3, and the same for 2.0+. They OS's are
- incompatible in this respect.
-
- I got it to work by doing different things under different
- versions of the OS, but that's me. Other programs will
- compile fine under both sets of includes, but will only
- run under that OS version.
-
- This will apply to all languages that use the Commodore
- include files in one way or another.
-
-
-
-